package com.sunday.framework.provider;

import com.sunday.common.core.remoting.base.page.PageResultDTO;
import com.sunday.common.core.remoting.base.response.Response;
import com.sunday.framework.dto.*;

/**
 * @Description: 角色表 provider 层
 * @author: zsy
 * @Create: 2022/11/07 16:21:06
 */
public interface RoleProvider {

    /**
     * @Description: 新增 角色表 数据
     * @Param: [saveRoleReqDTO]
     * @Return: com.sunday.common.core.remoting.base.response.Response
     * @Author: zsy
     * @Time: 2022/11/07 16:21:06
     */
    Response save(SaveRoleReqDTO saveRoleReqDTO);

    /**
     * @Description: 删除 角色表 数据
     * @Param: [removeRoleReqDTO]
     * @Return: com.sunday.common.core.remoting.base.response.Response
     * @Author: zsy
     * @Time: 2022/11/07 16:21:06
     */
    Response remove(RemoveRoleReqDTO removeRoleReqDTO);

    /**
     * @Description: 修改 角色表 数据
     * @Param: [updateRoleReqDTO]
     * @Return: com.sunday.common.core.remoting.base.response.Response
     * @Author: zsy
     * @Time: 2022/11/07 16:21:06
     */
    Response update(UpdateRoleReqDTO updateRoleReqDTO);

    /**
     * @Description: 获取 角色表 分页列表数据
     * @Param: [pageRoleReqDTO]
     * @Return: com.sunday.common.core.remoting.base.response.Response<com.sunday.common.core.remoting.base.page.PageResultDTO < com.sunday.user.center.pojo.dto.role.PageRoleResDTO>>
     * @Author: zsy
     * @Time: 2022/11/07 16:21:06
     */
    Response<PageResultDTO<PageRoleResDTO>> page(PageRoleReqDTO pageRoleReqDTO);

}